[INFO] fetching crate garando_syntax2 0.1.0...
[INFO] fixing garando_syntax2-0.1.0 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate garando_syntax2 0.1.0 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate garando_syntax2 0.1.0
[INFO] finished tweaking crates.io crate garando_syntax2 0.1.0
[INFO] tweaked toml for crates.io crate garando_syntax2 0.1.0 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate garando_syntax2 0.1.0 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 31 packages to latest compatible versions
[INFO] [stderr]       Adding bitflags v1.3.2 (available: v2.13.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 083288d85883da14c866c676e553af43093caae1b166611db6f8457f40cf371b
[INFO] running `Command { std: "docker" "start" "083288d85883da14c866c676e553af43093caae1b166611db6f8457f40cf371b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "083288d85883da14c866c676e553af43093caae1b166611db6f8457f40cf371b" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "083288d85883da14c866c676e553af43093caae1b166611db6f8457f40cf371b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "083288d85883da14c866c676e553af43093caae1b166611db6f8457f40cf371b" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2018 edition to 2021
[INFO] [stderr] note: Switching to Edition 2021 will enable the use of the version 2 feature resolver in Cargo.
[INFO] [stderr] This may cause some dependencies to be built with fewer features enabled than previously.
[INFO] [stderr] More information about the resolver changes may be found at https://doc.rust-lang.org/nightly/edition-guide/rust-2021/default-cargo-resolver.html
[INFO] [stderr] When building the following dependencies, the given features will no longer be used:
[INFO] [stderr] 
[INFO] [stderr]   proc-macro2 v1.0.106 (as host dependency) removed features: default
[INFO] [stderr]   quote v1.0.46 (as host dependency) removed features: default
[INFO] [stderr]   syn v2.0.118 (as host dependency) removed features: default
[INFO] [stderr] 
[INFO] [stderr]     Checking dirs-sys v0.3.7
[INFO] [stderr]     Checking serde_json v1.0.150
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking dirs v2.0.2
[INFO] [stderr]     Checking term v0.6.1
[INFO] [stderr]     Checking garando_pos v0.1.0
[INFO] [stderr]     Checking garando_errors v0.1.0
[INFO] [stderr]     Checking garando_syntax2 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2018 edition to 2021
[INFO] [stderr]        Fixed src/ext/tt/macro_rules.rs (3 fixes)
[INFO] [stderr]        Fixed src/parse/lexer/mod.rs (18 fixes)
[INFO] [stderr]        Fixed src/lib.rs (1 fix)
[INFO] [stderr]        Fixed src/parse/lexer/comments.rs (1 fix)
[INFO] [stderr]        Fixed src/ext/base.rs (1 fix)
[INFO] [stderr]        Fixed src/feature_gate.rs (1 fix)
[INFO] [stderr]        Fixed src/parse/mod.rs (4 fixes)
[INFO] [stderr]        Fixed src/ext/source_util.rs (1 fix)
[INFO] [stderr]        Fixed src/ext/tt/macro_parser.rs (3 fixes)
[INFO] [stderr]        Fixed src/util/small_vector.rs (2 fixes)
[INFO] [stderr]        Fixed src/ext/tt/transcribe.rs (4 fixes)
[INFO] [stderr]        Fixed src/ext/expand.rs (1 fix)
[INFO] [stderr]        Fixed src/test.rs (1 fix)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.80s
[INFO] [stderr] crater-edition-check: garando_syntax2 v0.1.0 (/opt/rustwide/workdir) updating edition from 2018 to 2021
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking garando_pos v0.1.0
[INFO] [stderr]     Checking garando_errors v0.1.0
[INFO] [stderr]     Checking garando_syntax2 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::ext`
[INFO] [stdout]   --> src/ext/build.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub use crate::ext;
[INFO] [stdout]    |             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::parse`
[INFO] [stdout]   --> src/ext/build.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub use crate::parse;
[INFO] [stdout]    |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ext`
[INFO] [stdout]   --> src/ext/build.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub use crate::ext;
[INFO] [stdout]    |             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::parse`
[INFO] [stdout]   --> src/ext/build.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub use crate::parse;
[INFO] [stdout]    |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_unsigned_leb128_to_buf` is never used
[INFO] [stdout]  --> src/rustc_data_structures/stable_hasher.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn write_unsigned_leb128_to_buf(buf: &mut [u8; 16], value: u64) -> usize {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_signed_leb128_to_buf` is never used
[INFO] [stdout]   --> src/rustc_data_structures/stable_hasher.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn write_signed_leb128_to_buf(buf: &mut [u8; 16], value: i64) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StableHasher` is never constructed
[INFO] [stdout]   --> src/rustc_data_structures/stable_hasher.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct StableHasher<W> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `StableHasherResult` is never used
[INFO] [stdout]   --> src/rustc_data_structures/stable_hasher.rs:44:11
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub trait StableHasherResult: Sized {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `write_uleb128` and `write_ileb128` are never used
[INFO] [stdout]   --> src/rustc_data_structures/stable_hasher.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl<W> StableHasher<W> {
[INFO] [stdout]    | ----------------------- methods in this implementation
[INFO] [stdout] 64 |     #[inline]
[INFO] [stdout] 65 |     fn write_uleb128(&mut self, value: u64) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn write_ileb128(&mut self, value: i64) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `HashStable` is never used
[INFO] [stdout]    --> src/rustc_data_structures/stable_hasher.rs:150:11
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub trait HashStable<CTX> {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Blake2bCtx` is never constructed
[INFO] [stdout]   --> src/rustc_data_structures/blake2b.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Blake2bCtx {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `b2b_g` is never used
[INFO] [stdout]   --> src/rustc_data_structures/blake2b.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn b2b_g(v: &mut [u64; 16], a: usize, b: usize, c: usize, d: usize, x: u64, y: u64) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLAKE2B_IV` is never used
[INFO] [stdout]   --> src/rustc_data_structures/blake2b.rs:54:7
[INFO] [stdout]    |
[INFO] [stdout] 54 | const BLAKE2B_IV: [u64; 8] = [
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `blake2b_compress` is never used
[INFO] [stdout]   --> src/rustc_data_structures/blake2b.rs:65:4
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn blake2b_compress(ctx: &mut Blake2bCtx, last: bool) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `blake2b_update` is never used
[INFO] [stdout]    --> src/rustc_data_structures/blake2b.rs:141:4
[INFO] [stdout]     |
[INFO] [stdout] 141 | fn blake2b_update(ctx: &mut Blake2bCtx, mut data: &[u8]) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `blake2b_final` is never used
[INFO] [stdout]    --> src/rustc_data_structures/blake2b.rs:178:4
[INFO] [stdout]     |
[INFO] [stdout] 178 | fn blake2b_final(ctx: &mut Blake2bCtx) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `checked_mem_copy` is never used
[INFO] [stdout]    --> src/rustc_data_structures/blake2b.rs:206:4
[INFO] [stdout]     |
[INFO] [stdout] 206 | fn checked_mem_copy<T1, T2>(from: &[T1], to: &mut [T2], byte_count: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Blake2bHasher` is never constructed
[INFO] [stdout]    --> src/rustc_data_structures/blake2b.rs:218:12
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub struct Blake2bHasher(Blake2bCtx);
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `finalize` is never used
[INFO] [stdout]    --> src/rustc_data_structures/blake2b.rs:235:12
[INFO] [stdout]     |
[INFO] [stdout] 234 | impl Blake2bHasher {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] 235 |     pub fn finalize(&mut self) -> &[u8] {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_unsigned_leb128_to` is never used
[INFO] [stdout]  --> src/rustc_data_structures/leb128.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn write_unsigned_leb128_to<W>(mut value: u128, mut write: W) -> usize
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_signed_leb128_to` is never used
[INFO] [stdout]   --> src/rustc_data_structures/leb128.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn write_signed_leb128_to<W>(mut value: i128, mut write: W) -> usize
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rustc_data_structures/indexed_vec.rs:142:17
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn iter(&self) -> slice::Iter<T> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn iter(&self) -> slice::Iter<'_, T> {
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rustc_data_structures/indexed_vec.rs:147:21
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn iter_mut(&mut self) -> slice::IterMut<T> {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn iter_mut(&mut self) -> slice::IterMut<'_, T> {
[INFO] [stdout]     |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/rustc_data_structures/stable_hasher.rs:188:33
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let val: u32 = unsafe { ::std::mem::transmute(*self) };
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 188 -         let val: u32 = unsafe { ::std::mem::transmute(*self) };
[INFO] [stdout] 188 +         let val: u32 = unsafe { f32::to_bits(*self) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/rustc_data_structures/stable_hasher.rs:195:33
[INFO] [stdout]     |
[INFO] [stdout] 195 |         let val: u64 = unsafe { ::std::mem::transmute(*self) };
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 195 -         let val: u64 = unsafe { ::std::mem::transmute(*self) };
[INFO] [stdout] 195 +         let val: u64 = unsafe { f64::to_bits(*self) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/codemap.rs:137:18
[INFO] [stdout]     |
[INFO] [stdout] 137 |     pub fn files(&self) -> Ref<Vec<Rc<FileMap>>> {
[INFO] [stdout]     |                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 137 |     pub fn files(&self) -> Ref<'_, Vec<Rc<FileMap>>> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:104:11
[INFO] [stdout]     |
[INFO] [stdout] 104 |     sess: &ParseSess,
[INFO] [stdout]     |           ^^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 105 | ) -> PResult<ast::Crate> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 105 | ) -> PResult<'_, ast::Crate> {
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:112:11
[INFO] [stdout]     |
[INFO] [stdout] 112 |     sess: &ParseSess,
[INFO] [stdout]     |           ^^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 113 | ) -> PResult<Vec<ast::Attribute>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 113 | ) -> PResult<'_, Vec<ast::Attribute>> {
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:120:11
[INFO] [stdout]     |
[INFO] [stdout] 120 |     sess: &ParseSess,
[INFO] [stdout]     |           ^^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 121 | ) -> PResult<P<ast::Expr>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 121 | ) -> PResult<'_, P<ast::Expr>> {
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:132:11
[INFO] [stdout]     |
[INFO] [stdout] 132 |     sess: &ParseSess,
[INFO] [stdout]     |           ^^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 133 | ) -> PResult<Option<P<ast::Item>>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 133 | ) -> PResult<'_, Option<P<ast::Item>>> {
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:140:11
[INFO] [stdout]     |
[INFO] [stdout] 140 |     sess: &ParseSess,
[INFO] [stdout]     |           ^^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 141 | ) -> PResult<ast::MetaItem> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 141 | ) -> PResult<'_, ast::MetaItem> {
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:148:11
[INFO] [stdout]     |
[INFO] [stdout] 148 |     sess: &ParseSess,
[INFO] [stdout]     |           ^^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 149 | ) -> PResult<Option<ast::Stmt>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 149 | ) -> PResult<'_, Option<ast::Stmt>> {
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:158:41
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub fn new_parser_from_source_str(sess: &ParseSess, name: String, source: String) -> Parser {
[INFO] [stdout]     |                                         ^^^^^^^^^^ the lifetime is elided here       ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub fn new_parser_from_source_str(sess: &ParseSess, name: String, source: String) -> Parser<'_> {
[INFO] [stdout]     |                                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:187:32
[INFO] [stdout]     |
[INFO] [stdout] 187 | pub fn filemap_to_parser(sess: &ParseSess, filemap: Rc<FileMap>) -> Parser {
[INFO] [stdout]     |                                ^^^^^^^^^^                           ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 187 | pub fn filemap_to_parser(sess: &ParseSess, filemap: Rc<FileMap>) -> Parser<'_> {
[INFO] [stdout]     |                                                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:204:34
[INFO] [stdout]     |
[INFO] [stdout] 204 | pub fn new_parser_from_tts(sess: &ParseSess, tts: Vec<TokenTree>) -> Parser {
[INFO] [stdout]     |                                  ^^^^^^^^^^                          ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 204 | pub fn new_parser_from_tts(sess: &ParseSess, tts: Vec<TokenTree>) -> Parser<'_> {
[INFO] [stdout]     |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:233:31
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub fn stream_to_parser(sess: &ParseSess, stream: TokenStream) -> Parser {
[INFO] [stdout]     |                               ^^^^^^^^^^                          ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub fn stream_to_parser(sess: &ParseSess, stream: TokenStream) -> Parser<'_> {
[INFO] [stdout]     |                                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/parser.rs:392:46
[INFO] [stdout]     |
[INFO] [stdout] 392 |     pub fn span_err(self, sp: Span, handler: &errors::Handler) -> DiagnosticBuilder {
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 392 |     pub fn span_err(self, sp: Span, handler: &errors::Handler) -> DiagnosticBuilder<'_> {
[INFO] [stdout]     |                                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&Box<[T]> as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<Box<[T]> as IntoIterator>::into_iter` in Rust 2024
[INFO] [stdout]    --> src/ptr.rs:210:18
[INFO] [stdout]     |
[INFO] [stdout] 210 |         self.ptr.into_iter()
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/intoiterator-box-slice.html>
[INFO] [stdout]     = note: `#[warn(boxed_slice_into_iter)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 210 -         self.ptr.into_iter()
[INFO] [stdout] 210 +         self.ptr.iter()
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 210 -         self.ptr.into_iter()
[INFO] [stdout] 210 +         IntoIterator::into_iter(self.ptr)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_unsigned_leb128_to_buf` is never used
[INFO] [stdout]  --> src/rustc_data_structures/stable_hasher.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn write_unsigned_leb128_to_buf(buf: &mut [u8; 16], value: u64) -> usize {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_signed_leb128_to_buf` is never used
[INFO] [stdout]   --> src/rustc_data_structures/stable_hasher.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn write_signed_leb128_to_buf(buf: &mut [u8; 16], value: i64) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StableHasher` is never constructed
[INFO] [stdout]   --> src/rustc_data_structures/stable_hasher.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct StableHasher<W> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `StableHasherResult` is never used
[INFO] [stdout]   --> src/rustc_data_structures/stable_hasher.rs:44:11
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub trait StableHasherResult: Sized {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `write_uleb128` and `write_ileb128` are never used
[INFO] [stdout]   --> src/rustc_data_structures/stable_hasher.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl<W> StableHasher<W> {
[INFO] [stdout]    | ----------------------- methods in this implementation
[INFO] [stdout] 64 |     #[inline]
[INFO] [stdout] 65 |     fn write_uleb128(&mut self, value: u64) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn write_ileb128(&mut self, value: i64) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `HashStable` is never used
[INFO] [stdout]    --> src/rustc_data_structures/stable_hasher.rs:150:11
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub trait HashStable<CTX> {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Blake2bCtx` is never constructed
[INFO] [stdout]   --> src/rustc_data_structures/blake2b.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Blake2bCtx {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `b2b_g` is never used
[INFO] [stdout]   --> src/rustc_data_structures/blake2b.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn b2b_g(v: &mut [u64; 16], a: usize, b: usize, c: usize, d: usize, x: u64, y: u64) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLAKE2B_IV` is never used
[INFO] [stdout]   --> src/rustc_data_structures/blake2b.rs:54:7
[INFO] [stdout]    |
[INFO] [stdout] 54 | const BLAKE2B_IV: [u64; 8] = [
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `blake2b_compress` is never used
[INFO] [stdout]   --> src/rustc_data_structures/blake2b.rs:65:4
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn blake2b_compress(ctx: &mut Blake2bCtx, last: bool) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `blake2b_update` is never used
[INFO] [stdout]    --> src/rustc_data_structures/blake2b.rs:141:4
[INFO] [stdout]     |
[INFO] [stdout] 141 | fn blake2b_update(ctx: &mut Blake2bCtx, mut data: &[u8]) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `blake2b_final` is never used
[INFO] [stdout]    --> src/rustc_data_structures/blake2b.rs:178:4
[INFO] [stdout]     |
[INFO] [stdout] 178 | fn blake2b_final(ctx: &mut Blake2bCtx) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `checked_mem_copy` is never used
[INFO] [stdout]    --> src/rustc_data_structures/blake2b.rs:206:4
[INFO] [stdout]     |
[INFO] [stdout] 206 | fn checked_mem_copy<T1, T2>(from: &[T1], to: &mut [T2], byte_count: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Blake2bHasher` is never constructed
[INFO] [stdout]    --> src/rustc_data_structures/blake2b.rs:218:12
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub struct Blake2bHasher(Blake2bCtx);
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `finalize` is never used
[INFO] [stdout]    --> src/rustc_data_structures/blake2b.rs:235:12
[INFO] [stdout]     |
[INFO] [stdout] 234 | impl Blake2bHasher {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] 235 |     pub fn finalize(&mut self) -> &[u8] {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_unsigned_leb128_to` is never used
[INFO] [stdout]  --> src/rustc_data_structures/leb128.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn write_unsigned_leb128_to<W>(mut value: u128, mut write: W) -> usize
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_signed_leb128_to` is never used
[INFO] [stdout]   --> src/rustc_data_structures/leb128.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn write_signed_leb128_to<W>(mut value: i128, mut write: W) -> usize
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `CodeMapExtension` is never used
[INFO] [stdout]    --> src/codemap.rs:881:11
[INFO] [stdout]     |
[INFO] [stdout] 881 |     trait CodeMapExtension {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rustc_data_structures/indexed_vec.rs:142:17
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn iter(&self) -> slice::Iter<T> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn iter(&self) -> slice::Iter<'_, T> {
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rustc_data_structures/indexed_vec.rs:147:21
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn iter_mut(&mut self) -> slice::IterMut<T> {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn iter_mut(&mut self) -> slice::IterMut<'_, T> {
[INFO] [stdout]     |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/rustc_data_structures/stable_hasher.rs:188:33
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let val: u32 = unsafe { ::std::mem::transmute(*self) };
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 188 -         let val: u32 = unsafe { ::std::mem::transmute(*self) };
[INFO] [stdout] 188 +         let val: u32 = unsafe { f32::to_bits(*self) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/rustc_data_structures/stable_hasher.rs:195:33
[INFO] [stdout]     |
[INFO] [stdout] 195 |         let val: u64 = unsafe { ::std::mem::transmute(*self) };
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 195 -         let val: u64 = unsafe { ::std::mem::transmute(*self) };
[INFO] [stdout] 195 +         let val: u64 = unsafe { f64::to_bits(*self) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/codemap.rs:137:18
[INFO] [stdout]     |
[INFO] [stdout] 137 |     pub fn files(&self) -> Ref<Vec<Rc<FileMap>>> {
[INFO] [stdout]     |                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 137 |     pub fn files(&self) -> Ref<'_, Vec<Rc<FileMap>>> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:104:11
[INFO] [stdout]     |
[INFO] [stdout] 104 |     sess: &ParseSess,
[INFO] [stdout]     |           ^^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 105 | ) -> PResult<ast::Crate> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 105 | ) -> PResult<'_, ast::Crate> {
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:112:11
[INFO] [stdout]     |
[INFO] [stdout] 112 |     sess: &ParseSess,
[INFO] [stdout]     |           ^^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 113 | ) -> PResult<Vec<ast::Attribute>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 113 | ) -> PResult<'_, Vec<ast::Attribute>> {
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:120:11
[INFO] [stdout]     |
[INFO] [stdout] 120 |     sess: &ParseSess,
[INFO] [stdout]     |           ^^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 121 | ) -> PResult<P<ast::Expr>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 121 | ) -> PResult<'_, P<ast::Expr>> {
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:132:11
[INFO] [stdout]     |
[INFO] [stdout] 132 |     sess: &ParseSess,
[INFO] [stdout]     |           ^^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 133 | ) -> PResult<Option<P<ast::Item>>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 133 | ) -> PResult<'_, Option<P<ast::Item>>> {
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:140:11
[INFO] [stdout]     |
[INFO] [stdout] 140 |     sess: &ParseSess,
[INFO] [stdout]     |           ^^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 141 | ) -> PResult<ast::MetaItem> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 141 | ) -> PResult<'_, ast::MetaItem> {
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:148:11
[INFO] [stdout]     |
[INFO] [stdout] 148 |     sess: &ParseSess,
[INFO] [stdout]     |           ^^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 149 | ) -> PResult<Option<ast::Stmt>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 149 | ) -> PResult<'_, Option<ast::Stmt>> {
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:158:41
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub fn new_parser_from_source_str(sess: &ParseSess, name: String, source: String) -> Parser {
[INFO] [stdout]     |                                         ^^^^^^^^^^ the lifetime is elided here       ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub fn new_parser_from_source_str(sess: &ParseSess, name: String, source: String) -> Parser<'_> {
[INFO] [stdout]     |                                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:187:32
[INFO] [stdout]     |
[INFO] [stdout] 187 | pub fn filemap_to_parser(sess: &ParseSess, filemap: Rc<FileMap>) -> Parser {
[INFO] [stdout]     |                                ^^^^^^^^^^                           ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 187 | pub fn filemap_to_parser(sess: &ParseSess, filemap: Rc<FileMap>) -> Parser<'_> {
[INFO] [stdout]     |                                                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:204:34
[INFO] [stdout]     |
[INFO] [stdout] 204 | pub fn new_parser_from_tts(sess: &ParseSess, tts: Vec<TokenTree>) -> Parser {
[INFO] [stdout]     |                                  ^^^^^^^^^^                          ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 204 | pub fn new_parser_from_tts(sess: &ParseSess, tts: Vec<TokenTree>) -> Parser<'_> {
[INFO] [stdout]     |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/mod.rs:233:31
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub fn stream_to_parser(sess: &ParseSess, stream: TokenStream) -> Parser {
[INFO] [stdout]     |                               ^^^^^^^^^^                          ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub fn stream_to_parser(sess: &ParseSess, stream: TokenStream) -> Parser<'_> {
[INFO] [stdout]     |                                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parse/parser.rs:392:46
[INFO] [stdout]     |
[INFO] [stdout] 392 |     pub fn span_err(self, sp: Span, handler: &errors::Handler) -> DiagnosticBuilder {
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 392 |     pub fn span_err(self, sp: Span, handler: &errors::Handler) -> DiagnosticBuilder<'_> {
[INFO] [stdout]     |                                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&Box<[T]> as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<Box<[T]> as IntoIterator>::into_iter` in Rust 2024
[INFO] [stdout]    --> src/ptr.rs:210:18
[INFO] [stdout]     |
[INFO] [stdout] 210 |         self.ptr.into_iter()
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/intoiterator-box-slice.html>
[INFO] [stdout]     = note: `#[warn(boxed_slice_into_iter)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 210 -         self.ptr.into_iter()
[INFO] [stdout] 210 +         self.ptr.iter()
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 210 -         self.ptr.into_iter()
[INFO] [stdout] 210 +         IntoIterator::into_iter(self.ptr)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 36.14s
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2018 edition to 2021
[INFO] [stderr] note: Switching to Edition 2021 will enable the use of the version 2 feature resolver in Cargo.
[INFO] [stderr] This may cause some dependencies to be built with fewer features enabled than previously.
[INFO] [stderr] More information about the resolver changes may be found at https://doc.rust-lang.org/nightly/edition-guide/rust-2021/default-cargo-resolver.html
[INFO] [stderr] When building the following dependencies, the given features will no longer be used:
[INFO] [stderr] 
[INFO] [stderr]   proc-macro2 v1.0.106 (as host dependency) removed features: default
[INFO] [stderr]   quote v1.0.46 (as host dependency) removed features: default
[INFO] [stderr]   syn v2.0.118 (as host dependency) removed features: default
[INFO] [stderr] 
[INFO] [stderr]     Checking garando_syntax2 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed src/ext/base.rs (1 fix)
[INFO] [stderr]        Fixed src/diagnostics/macros.rs (24 fixes)
[INFO] [stderr]        Fixed src/ext/quote.rs (7 fixes)
[INFO] [stderr]        Fixed src/ptr.rs (1 fix)
[INFO] [stderr]        Fixed src/feature_gate.rs (19 fixes)
[INFO] [stderr]        Fixed src/ext/expand.rs (1 fix)
[INFO] [stderr]        Fixed src/lib.rs (3 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/parse/parser.rs:962:23
[INFO] [stdout]     |
[INFO] [stdout] 962 |                 match f(self)? {
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 966 |             } else {
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 967 |                 if let Some(t) = sep.as_ref() {
[INFO] [stdout] 968 |                     self.expect(t)?;
[INFO] [stdout]     |                     ---------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/fold.rs (4 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/parse/parser.rs:2552:19
[INFO] [stdout]      |
[INFO] [stdout] 2543 |             match self.parse_field() {
[INFO] [stdout]      |                   ------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2552 |             match self.expect_one_of(&[token::Comma], &[token::CloseDelim(token::Brace)]) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 2553 |                 Ok(()) => {}
[INFO] [stdout] 2554 |                 Err(mut e) => {
[INFO] [stdout]      |                     -----
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `e` calls a custom destructor
[INFO] [stdout]      |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2560 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/parse/mod.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/parse/parser.rs:3363:19
[INFO] [stdout]      |
[INFO] [stdout] 3363 |             match self.parse_arm() {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 3364 |                 Ok(arm) => arms.push(arm),
[INFO] [stdout] 3365 |                 Err(mut e) => {
[INFO] [stdout]      |                     -----
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `e` calls a custom destructor
[INFO] [stdout]      |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 3376 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/parse/lexer/mod.rs (2 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/parse/parser.rs:4473:17
[INFO] [stdout]      |
[INFO] [stdout] 4472 |             .struct_span_warn(self.span, {
[INFO] [stdout]      |              ---------------- borrow later used by call
[INFO] [stdout] 4473 |                 &format!("expected `;`, found `{}`", self.this_token_to_string())
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/parse/parser.rs (3 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/parse/parser.rs:5328:19
[INFO] [stdout]      |
[INFO] [stdout] 5328 |             match self.parse_trait_item(&mut at_end) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 5329 |                 Ok(item) => trait_items.push(item),
[INFO] [stdout] 5330 |                 Err(mut e) => {
[INFO] [stdout]      |                     -----
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `e` calls a custom destructor
[INFO] [stdout]      |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5337 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/visit.rs (5 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/parse/parser.rs:5431:23
[INFO] [stdout]      |
[INFO] [stdout] 5431 |                 match self.parse_impl_item(&mut at_end) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 5432 |                     Ok(item) => impl_items.push(item),
[INFO] [stdout] 5433 |                     Err(mut e) => {
[INFO] [stdout]      |                         -----
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `e` calls a custom destructor
[INFO] [stdout]      |                         `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5440 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/parse/lexer/tokentrees.rs:24:19
[INFO] [stdout]     |
[INFO] [stdout]  24 |             match self.parse_token_tree() {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  25 |                 Ok(tt) => tts.push(tt.into()),
[INFO] [stdout]  26 |                 Err(mut e) => {
[INFO] [stdout]     |                     -----
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `e` calls a custom destructor
[INFO] [stdout]     |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  31 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/parse/mod.rs:229:15
[INFO] [stdout]     |
[INFO] [stdout] 227 |     let mut srdr = lexer::StringReader::new(sess, filemap);
[INFO] [stdout]     |         --------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `srdr` calls a custom destructor
[INFO] [stdout]     |         `srdr` will be dropped later as of Edition 2024
[INFO] [stdout] 228 |     srdr.real_token();
[INFO] [stdout] 229 |     panictry!(srdr.parse_all_token_trees())
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |               |
[INFO] [stdout]     |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 230 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `srdr` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/parse/parser.rs:962:23
[INFO] [stdout]     |
[INFO] [stdout] 962 |                 match f(self)? {
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 966 |             } else {
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 967 |                 if let Some(t) = sep.as_ref() {
[INFO] [stdout] 968 |                     self.expect(t)?;
[INFO] [stdout]     |                     ---------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/parse/parser.rs:2552:19
[INFO] [stdout]      |
[INFO] [stdout] 2543 |             match self.parse_field() {
[INFO] [stdout]      |                   ------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2552 |             match self.expect_one_of(&[token::Comma], &[token::CloseDelim(token::Brace)]) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 2553 |                 Ok(()) => {}
[INFO] [stdout] 2554 |                 Err(mut e) => {
[INFO] [stdout]      |                     -----
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `e` calls a custom destructor
[INFO] [stdout]      |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2560 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/parse/parser.rs:3363:19
[INFO] [stdout]      |
[INFO] [stdout] 3363 |             match self.parse_arm() {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 3364 |                 Ok(arm) => arms.push(arm),
[INFO] [stdout] 3365 |                 Err(mut e) => {
[INFO] [stdout]      |                     -----
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `e` calls a custom destructor
[INFO] [stdout]      |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 3376 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/parse/parser.rs:4473:17
[INFO] [stdout]      |
[INFO] [stdout] 4472 |             .struct_span_warn(self.span, {
[INFO] [stdout]      |              ---------------- borrow later used by call
[INFO] [stdout] 4473 |                 &format!("expected `;`, found `{}`", self.this_token_to_string())
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/parse/parser.rs:5328:19
[INFO] [stdout]      |
[INFO] [stdout] 5328 |             match self.parse_trait_item(&mut at_end) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 5329 |                 Ok(item) => trait_items.push(item),
[INFO] [stdout] 5330 |                 Err(mut e) => {
[INFO] [stdout]      |                     -----
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `e` calls a custom destructor
[INFO] [stdout]      |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5337 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/parse/parser.rs:5431:23
[INFO] [stdout]      |
[INFO] [stdout] 5431 |                 match self.parse_impl_item(&mut at_end) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 5432 |                     Ok(item) => impl_items.push(item),
[INFO] [stdout] 5433 |                     Err(mut e) => {
[INFO] [stdout]      |                         -----
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `e` calls a custom destructor
[INFO] [stdout]      |                         `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5440 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]      |
[INFO] [stdout]  181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/parse/lexer/tokentrees.rs:24:19
[INFO] [stdout]     |
[INFO] [stdout]  24 |             match self.parse_token_tree() {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  25 |                 Ok(tt) => tts.push(tt.into()),
[INFO] [stdout]  26 |                 Err(mut e) => {
[INFO] [stdout]     |                     -----
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `e` calls a custom destructor
[INFO] [stdout]     |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  31 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/parse/mod.rs:229:15
[INFO] [stdout]     |
[INFO] [stdout] 227 |     let mut srdr = lexer::StringReader::new(sess, filemap);
[INFO] [stdout]     |         --------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `srdr` calls a custom destructor
[INFO] [stdout]     |         `srdr` will be dropped later as of Edition 2024
[INFO] [stdout] 228 |     srdr.real_token();
[INFO] [stdout] 229 |     panictry!(srdr.parse_all_token_trees())
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |               |
[INFO] [stdout]     |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 230 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `srdr` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garando_errors-0.1.0/src/diagnostic_builder.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl<'a> Drop for DiagnosticBuilder<'a> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 56.92s
[INFO] [stderr] crater-edition-check: garando_syntax2 v0.1.0 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking garando_syntax2 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::ext`
[INFO] [stdout]   --> src/ext/build.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub use crate::ext;
[INFO] [stdout]    |             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::parse`
[INFO] [stdout]   --> src/ext/build.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub use crate::parse;
[INFO] [stdout]    |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ext`
[INFO] [stdout]   --> src/ext/build.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub use crate::ext;
[INFO] [stdout]    |             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::parse`
[INFO] [stdout]   --> src/ext/build.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub use crate::parse;
[INFO] [stdout]    |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]     --> src/parse/parser.rs:4473:18
[INFO] [stdout]      |
[INFO] [stdout] 4472 |             .struct_span_warn(self.span, {
[INFO] [stdout]      |              ---------------- borrow later used by call
[INFO] [stdout] 4473 |                 &format!("expected `;`, found `{}`", self.this_token_to_string())
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-
[INFO] [stdout]      |                  |                                                              |
[INFO] [stdout]      |                  |                                                              temporary value is freed at the end of this statement
[INFO] [stdout]      |                  creates a temporary value which is freed while still in use
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]     --> src/parse/parser.rs:4473:18
[INFO] [stdout]      |
[INFO] [stdout] 4472 |             .struct_span_warn(self.span, {
[INFO] [stdout]      |              ---------------- borrow later used by call
[INFO] [stdout] 4473 |                 &format!("expected `;`, found `{}`", self.this_token_to_string())
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-
[INFO] [stdout]      |                  |                                                              |
[INFO] [stdout]      |                  |                                                              temporary value is freed at the end of this statement
[INFO] [stdout]      |                  creates a temporary value which is freed while still in use
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0716`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `garando_syntax2` (lib) due to 1 previous error; 2 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] For more information about this error, try `rustc --explain E0716`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `garando_syntax2` (lib test) due to 1 previous error; 2 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "083288d85883da14c866c676e553af43093caae1b166611db6f8457f40cf371b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "083288d85883da14c866c676e553af43093caae1b166611db6f8457f40cf371b", kill_on_drop: false }`
[INFO] [stdout] 083288d85883da14c866c676e553af43093caae1b166611db6f8457f40cf371b
